import {request} from '../../request/index.js';
//导入es7的async进行请求语法  进行使用
import regeneratorRuntime from '../../lib/runtime/runtime';

/*
用户上滑可以加载下一页数据
1.找到滚动条触底事件   （去微信开发文档找）
2.判断是否有下一页数据
  能获取数据总页数  和当前的页码    
  总页数   = Math.ceil(总条数/页容量)
  ==》？当前大于总，就没下一页
3.有  加载下一页
    （1）当前页 ++  （2）重新发送请求  （3）请求数据回来 要对数组进行拼接  而不是替换！！！ 
4.没有弹出提示
*/


/*   下拉刷新步骤
1. 在json 添加配置项 
   "enablePullDownRefresh":true,
   "backgroundTextStyle": "dark"
1.下拉触发功能事件     

2.重新把数据清空  在进行请求数据   数组清空

3.重置页码  页码重置为1
*/


Page({

  /**
   * 页面的初始数据
   */
  data: {
    tabs:[
      {
        id:0,
        value:'综合',
        isActive:true
      },
      {
        id:1,
        value:'销量',
        isActive:false
      },
      {
        id:2,
        value:'价格',
        isActive:false
      },
    ],
    goodList:[]
  },
  // 总页数全局变量
  sum:1,

  /**
   * 生命周期函数--监听页面加载
   */
  //接口要获取的参数
  QueryParams:{
    query:"",
    cid:"",
    pagenum:1,
    pagesize:10
  
  } 
  ,
  onLoad: function (options) {
    // 这是上一页的cid
    // console.log(options.cid)

    
    
    

    // 把上一页的cid传给接口要的参数
    this.QueryParams.cid=options.cid
    this.datil();
  },

  // 发送异步请求接口
  async datil(){
  const result = await request({url:'/goods/search',data:this.QueryParams});
// 拿到总条数 换算成总页数
  const total = result.total
    this.sum = Math.ceil(  total/this.QueryParams.pagesize)
    console.log(this.sum)


  // console.log(result)
  this.setData({
    // goodList:result.goods
    // 对数组进行拼接
    goodList:[...this.data.goodList,...result.goods]
  })

  // 关闭刷新的代码
  wx.stopPullDownRefresh()
    
  },




  // tab 点击切换颜色事件
  tabfuzujian(e){
    // 拿到子组件传递过来的索引
    // console.log(e.detail)
    const {index} = e.detail

    // 对原来的数组进行改变
    // 获取到data里面的元数据
    let {tabs} = this.data;
    tabs.forEach((v,i)=>i===index? v.isActive=true:v.isActive=false)
    this.setData({
      tabs
    })

  },


  // 滚动条获取底部
  onReachBottom(){
    if(this.QueryParams.pagenum>=this.sum){
      wx.showToast({
              title: '到底了呢',
        })
    }else{
      // console.log('有')
      this.QueryParams.pagenum++;
      this.datil();
    }
  },

  // 下拉刷新的代码
  onPullDownRefresh(){
    // 清空数组
    this.setData({
      goodList:[]
    })
    // 页码为1
    this.QueryParams.pagenum=1;
    //重新发送请求
    this.datil(); 
    
  }

 
})